Networking architectures have grown increasingly complex in communication environments. This complexity has resulted in numerous protocols being implemented to ensure that service elements are functioning optimally and directing packets in an efficient manner. Service elements typically provide service for traffic in a given network. For example, these services could include deep packet inspection (DPI), firewall activities, quality of service (QoS) operations, and session border controller (SBC) functions.
Due to the nature of many of these services, the processing time [per packet] of these elements is not fixed. For example, there is a significant variant for DPI and that variance could be in the order of ten. As a result, bursts of packets can engender large processing times, which spawn a huge delay inside the service elements. As in the case in virtually all networks, such a delay is problematic, as it can affect real-time services and generally inhibit performance for a multitude of users of the network.
Thus, the ability to offer a system or a protocol that offers an effective processing for packets (while accommodating inherent delay in the system) provides a significant challenge to network designers, component manufacturers, service providers, and system administrators alike.